iT邦幫忙

2023 iThome 鐵人賽

DAY 8
0
自我挑戰組

C語言精讀研習系列 第 8

三元運算符在帶有傳回值函數之應用

  • 分享至 

  • xImage
  •  

() ? : 三元運算符是一種特殊的條件運算符,可以用來簡化邏輯,精簡程式碼。
(Condition) ? a : b
Condition若為 真True(非0), 則返回a;
Condition若為 假False(0),則返回b

程式碼

#include <stdio.h>

int maximum(int x, int y, int z){
	int max = x;	//假定x為最大,最大值變數設為max 
	
	//運用三元運算符?:
	max = (y > max) ? y : max;	//if y > max, max被賦予y值,否的話max還是為x
	max = (z > max) ? z : max;	//if z > max, max被賦予z值,否的話max可能是x or y(看前式比較結果)
	
	return max;	//將最大值傳回呼叫來源處,也就是main()函數下的max = maximum() 
}

int main(void){
	int num1, num2, num3, max;
	
	printf("請輸入 3 個要比較大小的數字:\n");
	scanf("%d %d %d", &num1, &num2, &num3);
	
	//呼叫maximum函數並將傳回的最大值max儲存在max變數中
	max = maximum(num1, num2, num3);
	
	printf("最大值: %d \n", max);
	
	return 0;
}

結果
https://ithelp.ithome.com.tw/upload/images/20230921/20160744zcumETd51D.png

參考來源:條件運算子


上一篇
帶有傳回值的函數
下一篇
使用簡易函式演練C語言證照題庫
系列文
C語言精讀研習47
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言